<html>
<head>
<title>Java Programs</title>
</head>
<body bgcolor="#ffffff" link="#0000ff" vlink="#ff0000" alink="#ff0000"
text="#000000">
<h3>Java Programs Related to the Book</h3>
<hr>
<b>Book Title:</b>
<a href="http://www.physics.unlv.edu/~pang/cp.html">An Introduction
to Computational Physics, 2nd Edition</a><br>
<b>Author:</b>
<a href="http://www.physics.unlv.edu/~pang">Tao Pang</a><br>
<b>Publisher:</b>
<a href="http://www.cup.org">Cambridge University Press</a><br>
<b>Publication Place:</b> Cambridge, UK<br>
<b>Publication Date:</b> February 2006<br>
<b>ISBN:</b> 0-521-82569-5 (hardback)<br>
<b>List Price:</b> $70<br> 
<b>Other Info:</b> 402 Pages; 246 x 189 mm; 37 Line Diagrams; 3 Tables;
169 Exercises; Bibliography; and Index
<hr>
<b> Please Note:</b><ol start=1>
<li> Most programs listed here have appeared in the book, which are
copyrighted along with the book;
<li> No warranties, express or implied, are made for any material at this site.
</ol>
<hr>
<b>Chapter 1. Introduction</b><ul type=circle>
<li>
<a href="comp4/Motion.java"> Program 1.1</a>: One-dimensional motion under a
harmonic force.
</ul>
<hr>
<b>Chapter 2. Approximation of a function</b><ul type=circle>
<li>
<a href="comp4/Lagrange.java">Program 2.1</a>: Lagrange interpolation with
the Aitken method.
<li>
<a href="comp4/Lagrange2.java">Program 2.2</a>: Lagrange interpolation with
the upward/downward correction method.
<li>
<a href="comp4/Millikan.java">Program 2.3</a>: Orthogonal polynomials
generator applied to fit the data of the Millikan experiment.
<li>
<a href="comp4/Millikan2.java">Program 2.4</a>: A direct linear fit to the
data of the Millikan experiment.
<li>
<a href="comp4/Spline.java">Program 2.5</a>: An example of using the cubic
spline with the input data file <a href="comp4/xy.data">xy.data</a>.
<li>
<a href="comp4/Dart.java">Program 2.6</a>: An example of using the random
number generator in throwing darts.
<li>
<a href="comp4/Dart2.java">Program 2.7</a>: An example of using the 64-bit
random number generator in throwing darts.
<li>
<a href="comp4/RandomExp.java">Program 2.8</a>: An example of generating
exponential random numbers.
<li>
<a href="comp4/RandomGauss.java">Program 2.9</a>: An example of generating
Gaussian random numbers.
<li>
<a href="comp4/Percolate.java">Program 2.10</a>: An example of generating
a two-dimensional percolation network.
</ul>
<hr>
<b>Chapter 3. Numerical calculus</b><ul type=circle>
<li>
<a href="comp4/Deriv.java">Program 3.1</a>: Derivatives with the
three-point formula.
<li>
<a href="comp4/Deriv2.java">Program 3.2</a>: Derivatives with the nonuniform
three-point formula.
<li>
<a href="comp4/Deriv3.java">Program 3.3</a>: Derivatives with the adaptive
scheme.
<li>
<a href="comp4/Integral.java">Program 3.4</a>: Integration with the Simpson
rule.
<li>
<a href="comp4/Integral2.java">Program 3.5</a>: Integration with the adaptive
scheme.
<li>
<a href="comp4/Integral3.java">Program 3.6</a>: Integration with the nonuniform
Simpson rule.
<li>
<a href="comp4/Bisect.java">Program 3.7</a>: Root Search with the bisection
method.
<li>
<a href="comp4/Newton.java">Program 3.8</a>: Root Search with the Newton
method.
<li>
<a href="comp4/Root.java">Program 3.9</a>: Root Search with the secant
method.
<li>
<a href="comp4/Bond.java">Program 3.10</a>: Bond length of NaCl.
<li>
<a href="comp4/Minimum.java">Program 3.11</a>: An example of using the
steepest-decent method in search of a minimum.
<li>
<a href="comp4/Collide.java">Program 3.12</a>: Classical scattering.
</ul>
<hr>
<b>Chapter 4. Ordinary differential equations</b><ul type=circle>
<li>
<a href="comp4/Motion2.java">Program 4.1</a>: Simplest predictor-corrector
scheme.
<li>
<a href="comp4/Jump.java">Program 4.2</a>: Two-point predictor-corrector
scheme applied to a motorcycle jump.
<li>
<a href="comp4/Pendulum.java">Program 4.3</a>: Fourth order Runge-Kutta
algorithm applied to the nonlinear pendulum problem.
<li>
<a href="comp4/Shooting.java">Program 4.4</a>: Boundary-value problem solved
with the shooting method.
<li>
<a href="comp4/LinearDEq.java">Program 4.4</a>: Boundary-value problem in the
form of a linear differential equation.
<li>
<a href="comp4/Sturm.java">Program 4.5</a>: Simplest algorithm for the
Sturm-Liouville equation.
<li>
<a href="comp4/Schroedinger.java">Program 4.6</a>: Eigenvalue problem of the
one-dimensional Schroedinger equation.
<li>
<a href="comp4/Scattering.java">Program 4.7</a>: Quantum scattering in one
dimension.
</ul>
<hr>
<b>Chapter 5. Numerical methods for matrices</b><ul type=circle>
<li>
<a href="comp4/Det.java ">Program 5.1</a>: Determinant evaluated
with the Gaussian elimination scheme.
<li>
<a href="comp4/LinearEq.java">Program 5.2</a>: Linear equation set solver
with the Gaussian elimination scheme.
<li>
<a href="comp4/Inverse.java">Program 5.3</a>: Matrix inversion with the
Gaussian elimination scheme.
<li>
<a href="comp4/Rootm.java">Program 5.4</a>: An application of the
multivariable Newton method.
<li>
<a href="comp4/Poly.java">Program 5.5</a>: Generator of the determinant
polynomials.
<li>
<a href="comp4/Faddeev.java">Program 5.6</a>: Matrix inversion with the
Faddeev-Leverrier method.
<li>
<a href="comp4/Poly2.java">Program 5.7</a>: Evaluation of a complex polynomial.
<li>
<a href="comp4/RMatrix.java">Program 5.8</a>: Random matrix generator.
</ul>
<hr>
<b>Chapter 6. Spectral analysis</b><ul type=circle>
<li>
<a href="comp4/Fourier.java">Program 6.1</a>: Discrete Fourier transform.
<li>
<a href="comp4/Fourier2.java">Program 6.2</a>: Fast Fourier transform.
<li>
<a href="comp4/Fourier2d.java">Program 6.3</a>: Fast Fourier transform in
two dimensions.
<li>
<a href="comp4/Wavelet.java">Program 6.4</a>: The continuous wavelet transform.
<li>
<a href="comp4/Legendre.java">Program 6.5</a>: The Legendre polynomials
generator.
<li>
<a href="comp4/Bessel.java">Program 6.6</a>: The Bessel functions
generator.
</ul>
<hr>
<b>Chapter 7. Partial differential equations</b><ul type=circle>
<li>
<a href="comp4/Bench.java">Program 7.1</a>: The bench problem solved with
the LU decomposition.
<li>
<a href="comp4/Bench2.java">Program 7.2</a>: The bench problem solved with
the relaxation scheme.
<li>
<a href="comp4/Groundwater.java">Program 7.3</a>: Ground water dynamics.
<li>
<a href="comp4/Nuclear.java">Program 7.4</a>: The time-dependent temperature
field.
</ul>
<hr>
<b>Chapter 8. Molecular dynamics</b><ul type=circle>
<li>
<a href="comp4/Comet.java">Program 8.1</a>: Halley's comet studied with
the Verlet algorithm.
<li>
<a href="comp4/Maxwell.java">Program 8.2</a>: The Maxwell velocity distribution
generator.
</ul>
<hr>
<b>Chapter 9. Modeling continuous systems</b><ul type=circle>
<li>
<a href="comp4/Poisson.java">Program 9.1</a>: Solution of one-dimensional
Poisson equation with the finite element method.
</ul>
<hr>
<b>Chapter 10. Monte Carlo simulations</b><ul type=circle>
<li>
<a href="comp4/Monte.java">Program 10.1</a>: An example with random sampling.
<li>
<a href="comp4/Carlo.java">Program 10.2</a>: An example with importance
sampling.
</ul>
<hr>
<b>Chapter 11. Genetic algorithm and programming</b><ul type=circle>
<li>
<a href="comp4/Thomson.java">Program 11.1</a>: The Thomson problem solved with
the discrete variable genetic algorithm.
<li>
<a href="comp4/Thomsonr.java">Program 11.2</a>: The Thomson problem solved with
the real variable genetic algorithm.
<li>
<a href="comp4/Argon.java">Program 11.3</a>: The Lennard-Jones clusters
optimized with the genetic algorithm.
</ul>
</body>
</html>
